package com.foreknow.service.impl;

import com.foreknow.bean.User;
import com.foreknow.dao.UserDao;
import com.foreknow.dao.UserMapper;
import com.foreknow.dao.impl.UserDaoImpl;
import com.foreknow.service.UserService;

/**
 * IOC容器:IOC控制反转(之前需要我们自己做的事情，现在交给容器去实现)
 * 面试题：除了IOC容器还了解哪些容器  servlet容器(tomcat就是一个servlet容器)
 * 概念：
 * 1. 什么是面向接口来编程
 * 2. 什么是IOC容器，IOC容器的作用是什么
 * 3. 什么是依赖注入
 * 4. 你了IOC容器，如果不使用Spring框架，你如何实现自己的IOC容器呢。IOC容器是基于什么来实现的。
 */
public class UserServiceImpl implements UserService {

    private UserDao userDao;

    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

    @Override
    public User getUserById(int id) {
        return userDao.getUserById(id);
    }

    public static void main(String[] args) {
        UserServiceImpl userService = new UserServiceImpl();
        userService.setUserDao(new UserDaoImpl());
        userService.getUserById(1);
    }

}
